package represent.type;

public class DefaultType implements Type {

	public DefaultType() {}

	public Object asJavaVal() {
		throw new Error("Undefined operation.");
	}

	public Type divide(Type c) {
		throw new Error("Undefined operation.");
	}

	public String getType() {
		return "default";
	}

	public Type minus(Type c) {
		throw new Error("Undefined operation.");
	}

	public Type mod(Type c) {
		throw new Error("Undefined operation.");
	}

	public Type mult(Type c) {
		throw new Error("Undefined operation.");
	}

	public Type plus(Type constant) {
		throw new Error("Undefined operation.");
	}

	public int compareTo(Type arg0) {
		throw new Error("Undefined operation.");
	}

	public String toString() {
		return "default";
	}

	public boolean equals(Object o){
		throw new Error("Undefined operation.");
	}

//	public int compare(byte[] a, byte[] b) {
		// TODO �Զ���ɷ������
//		return 0;
//	}

//	public static DefaultType fromBytes(byte[] bytes) {
//		 TODO �Զ���ɷ������
//		return null;
//	}
	
	public int TypeToInt() {
		return utils.Constant.DEFAULT;
	}
	
	public static int length() {
		// TODO Auto-generated method stub
		return 0;
	}
}
